class LocalizeController < ApplicationController

  ###########################################################
  # メソッド：load_messageアクション
  # 概　　要：ローカライズ用の言語データを返すアクション（JSON形式）
  ###########################################################
  def load_message
    render :text=> "app_messages_hash = " + @app_messages_hash.to_json + ";"
  end

  ###########################################################
  # メソッド：load_functionsアクション
  # 概　　要：ローカライズ用のJavaScriptファンクションを返すアクション
  ###########################################################
  def load_functions
    #-----------------------------
    # 関数名：app_localized_message
    # 概　要：ローカライズされた言語文字列を返す
    # 引　数：msg_kbn    メッセージ区分（:label、:confirm、:error）
    #         msg_code   メッセージコード
    # 戻り値：ローカライズ言語文字列
    #-----------------------------
    function = <<FUNC
function app_localized_message(msg_kbn, msg_code) {
  if (app_messages_hash[msg_kbn + "_" + msg_code] == null) {
    return ""
  } else {
    return app_messages_hash[msg_kbn + "_" + msg_code].msg;
  }
} 
FUNC

    #-----------------------------
    # 関数名：url_for
    # 概　要：ローカライズされたURL文字列を返す
    # 引　数：target    ターゲットURL文字列
    # 戻り値：ローカライズされたURL文字列
    #-----------------------------
    base_url = url_for(:controller=>"").gsub(/\/localize/, '')
    function += <<FUNC
function url_for(target) {
  var base = "#{base_url}";
  return base + target;
}
FUNC
    
    render :text=> function ;
  end

end